\chapter{User case diagrams definition}
\label{useCaseDiagramsDefinition}

A \emph{use case diagram} in the Unified Modeling Language (UML) is a type of behavioral diagram defined by and created from 
a Use-case analysis. Its purpose is to present a graphical overview of the functionality provided by a system in terms of actors, 
their goals (represented as use cases), and any dependencies between those use cases. The main purpose of a use case diagram is 
to show what system functions are performed for which actor. Roles of the actors in the system can be depicted. This definition
has been taken from \emph{\cite{UseCaseDiagramIdentAndroid}}.

\section{Actors definition}
An actor in the Unified Modeling Language (UML) specifies a role played by a user or any other external entity that interacts 
with the subject or the system. Actors are drawn as stick figures. Actors may represent roles played by human users, external 
hardware, or other subjects. An actor does not necessarily represent a specific physical entity but merely a particular facet 
(i.e., “role”) of some entity that is relevant to the specification of its associated use cases. Thus, a single physical 
instance may play the role of several different actors and, conversely, a given actor may be played by multiple different 
instances. This definition has been taken from \emph{\cite{UseCaseActorIdentAndroid}}.


\section{Association definition}

Association  between actors and use cases are indicated in use case diagrams by solid lines. An association exists whenever an 
actor is involved with an interaction described by a use case.  Associations are model as lines connecting use cases and 
actors to one another, with an optional arrowhead on one end of the line. This definition has been taken from 
\emph{\cite{UseCaseAssociationIdentAndroid}}.

\section{Use case definition}

A use case is a description of a system's (or subsystem's) behaviour, sequences of actions, including variant sequences and 
error sequences, as it responds to a request that originates from outside of that system, under consideration to accomplish a goal. 
In other words, a use case describes "who" can do "what" with the system in question. A use case is drawn as a horizontal ellipse.
This definition has been taken from \emph{\cite{UseCaseIdentAndroid}}